# -*- coding: utf-8 -*-
"""
Created on Fri Aug 18 19:04:52 2023

@author: skunk69
"""

import json

chinese_name = u'儿童汉语阅读障碍量表'
english_name = 'Dyslexia Checklist for Chinese Children'
abbreviation = 'DCCC'
category = u'学习与教育量表'

outline = u"""阅读障碍(dyslexia)主要指有适当教育机会的儿童在阅读技能万面有明显缺陷，表现为对书面语言的阅读理解困难，而在其他学业领域可能正常，但不能用智力、学习动机、情绪和行为问题来解释。阅读障碍是一种发展性障碍，它严重影响儿童学习和发展。
儿童汉语阅读障碍量表(Dyslexia Checklist for Chinese Children, DCCC)，是根据ICD-10和DSM-IV对阅读障碍的诊断标准，在汉语认知心理学与语言学理论研究的基础上，针对汉语阅读障碍儿童的行为特点和临床表现，由华中科技大学同济心理卫生研究中心编制而成，适用于小学三至五年级的儿童。"""

instruction = u"""这是一份了解小学三到五年级儿童汉语阅读行为与习惯的调查表，由熟悉儿童情况的家长或老师填写。请根据被评定孩子的实际情况，在“从未出现”、“偶尔出现”、“有时出现”、“较常出现”和“经常出现”中选择最为接近的一项。"""

with open('DCCC.txt','r',encoding='utf-8') as f:
    lines = f.readlines()
    f.close()

items = {}
for line in lines[0::6]:
    key,value = line.strip().split('.')
    items[key] = value.strip()

reverse_items = []
scales = [u'视知觉障碍',u'听知觉障碍',u'意义理解障碍',u'书写障碍',u'口语障碍',
          u'书面表达障碍',u'不良阅读习惯',u'注意力障碍']
scales_items = [
    [1,2,5,6,7,22,55],# 视知觉障碍
    [8,11,17,21,23,56],# 听知觉障碍
    [10,26,29,32,33,44,46,50,51],# 意义理解障碍
    [9,16,20,28,39,48,54],# 书写障碍
    [15,27,30,36,38,40],# 口语障碍
    [19,31,35,41,52,53,57],# 书面表达障碍
    [3,37,42,43,47,49],# 不良阅读习惯
    [4,14,18,24,25,34,45],# 注意力障碍
    ]

# check scales_items
print(f'scale length={[len(l) for l in scales_items]}')

check = []
for l in scales_items:
    check = check+l
print(f'len(check)={len(check)}')

# complementary set
check_set = {i for i in sorted(check)}^{i for i in range(1,58)}
print(f'complementary set= {check_set}')

factors = []
factors_scales = []
rating = [l.strip() for l in lines[1:6]]
score_rules = list(range(1,6))

contents = {
    'instruction':instruction,
    'items':items,
    'reverse_items':reverse_items,
    'scales':scales,
    'scales_items':scales_items,
    'factors':factors,
    'factors_scales':factors_scales,
    'rating':rating,
    'score_rules':score_rules       
    }

implementation = u"""儿童汉语阅读障碍量表是一个他评式量表，适用于小学三至五年级的儿童。"""

reliability = u"""研究者计算了各项目与该维度的相关，结果表明相关系数在0.2~0.9，在统计学上均具有显著性意义（P<0.01）。8个因子的内部一致性信度α系数在0.75~0.87，重测信度在0.644~0.748（P<0.05）。"""
validity = u"""主要考察了量表结构效度、内容效度和区分效度，结果表明，8因子模型与原假设吻合，DCCC能够区分出不同阅读水平层次，具有良好的区分效度。"""
measurements = {'reliability':reliability,'validity':validity}

interpretation = u"""儿童汉语阅读障碍量表各维度的释义：
（1）视知觉障碍，主要测查儿童对汉字字形的视觉加工、早期大脑发育和动作协调功能障碍。
（2）听知觉障碍，主要测查儿童对汉字语音的听觉加工和语音表达障碍。
（3）意义理解障碍，主要测查儿童对包括字、词、句、段落和篇章等不同层次语义表达的获得和加工障碍。
（4）书写障碍，主要测查儿童的书写流畅性和可辨认性，反映其书写注意力集中和书写动作障碍。
（5）口语障碍，主要测查儿童口语理解和口语表达障碍。
（6）书面表达障碍，主要测查儿童在书面语的使用和输出方面的困难，反映儿童意义加工、书面词汇量缺失和书写技能的综合障碍。
（7）不良阅读习惯，主要测查儿童由于不良阅读习惯和环境导致对汉字水平形、音、义加工能力障碍。
（8）注意力障碍，主要测查儿童存在注意力缺陷，专注水平低导致汉字字形、字音、字义的加工障碍。
将各维度题目相加得到各维度分，所有题目之和为总分。原始分越高表示汉语阅读障碍行为表现越严重。将原始分X转换为T分的公式为：T=50+10(X-M)/SD，其中M为样本均值，SD为样本标准差。一般T分低于69百分位属于正常，超过98百分位即认为可能异常。只要被试者的一项因子（维度）异常，就被诊断为汉语阅读障碍。"""

applications = u"""目前本量表仅应用于中国大陆。"""

this_scale = {
    'chinese_name':chinese_name,
    'english_name':english_name,
    'abbreviation':abbreviation,
    'category':category,
    'outline':outline,
    'contents':contents,
    'implementation':implementation,
    'measurements':measurements,
    'interpretation':interpretation,
    'applications':applications    
    }

with open(abbreviation+'.json','w+',encoding='utf-8') as f:
    json.dump(this_scale,f,indent=2,ensure_ascii=False)